package mspbots.teams.client.core;

import mspbots.teams.client.oauth.TokenState;
import reactor.core.publisher.Mono;

/**
 * mspbots.data.autotask.core.BaseSyncService
 *
 * @author <a href="https://github.com/vnobo">Alex bob</a>
 * @date Created by 2020/7/10
 */
public interface BaseSyncService {

    /**
     * sync all to mq get data
     *
     * @param tokenState sync property
     * @return Mono<Void> default mono
     */
    default Mono<Void> syncFast(TokenState tokenState) {
        return Mono.empty();
    }

    /**
     * sync all data result
     *
     * @param tokenState sync property
     * @return Mono<Void> default mono
     */
    default Mono<Void> syncSlow(TokenState tokenState) {
        return Mono.empty();
    }
}
